Logo

1. Bug Fixes

1.1. Progress status

MPEG 154: The group agrees on the identified bug related to the mismatch in the definition of the haptic channel identifier (channel_id) between ISO/IEC 23090-31 and ISO/IEC 23090-32 and metadata dependency between MIHS Track and Referenced MIHS Band Tracks.

1.2. m76724 [Systems][Haptics] Bug Fix in Haptic Carriage Specification ISO/IEC 23090-32

1.2.1. Abstract

Alignment between the coding and carriage specifications is essential to ensure consistent interpretation of haptics data and interoperability across systems. This contribution addresses the following: - mismatch in the definition of the haptic channel identifier (channel_id) between ISO/IEC 23090-31 [1] and ISO/IEC 23090-32 [2], - metadata dependency between MIHS Track and Referenced MIHS Band Tracks

1.2.2. Channel Identifier Bit-Width Alignment between ISO/IEC 23090-31 [1] and ISO/IEC 23090-32 [2]

1.2.2.1. Introduction

ISO/IEC 23090-31 [1] defines a scalable haptics coding framework supporting up to 65536 channels per perception through a 16-bit channel identifier (channel_id).

ISO/IEC 23090-32 [2] specifies the carriage of haptics data in ISOBMFF. However, in its current form, it constrains the channel identifier to 8 bits in several structures. This contribution proposes an alignment of the channel identifier bit-width. == Problem Statement In ISO/IEC 23090-31, the haptic channel identifier is defined as a 16-bit unsigned integer (16 uimsbf) in both metadata and data syntax.

In ISO/IEC 23090-32, the channel identifier is limited to 8 bits in multiple structures, including: • HapticChannelDescriptionHeaderBox • HapticBandConfigurationBox • MIHSBandGroupBox

This discrepancy leads to the following issues:

  • A conformant ISO/IEC 23090-31 [1] bitstream may not be representable in ISO/IEC 23090-32 [2] without loss or ambiguity

  • Channel identifiers may be truncated or collide

  • No normative behavior is defined when the number of channels exceeds 255

  • The specifications do not explicitly state that carriage restricts coding capabilities

As a result, interoperability between encoders, decoders, reference software, and delivery systems cannot be guaranteed.

1.2.2.2. Technical Analysis
1.2.2.2.1. Coding Specification (ISO/IEC 23090-31)

The channel identifier is defined as: • channelId: 16 uimsbf in readMetadataChannel() • channelId: 16 uimsbf in readData()

This allows: • up to 65536 channels per perception • channel identification scoped by (perceptionId, channelId) This design supports scalable and high-density haptic systems.

1.2.2.2.2. Carriage Specification (ISO/IEC 23090-32)

In ISO/IEC 23090-32, the channel identifier is carried using 8-bit fields: unsigned int(8) channel_id;

This applies to several boxes, including: • HapticChannelDescriptionHeaderBox • HapticBandConfigurationBox • MIHSBandGroupBox • This limits the number of addressable channels to 256. No normative linkage to the 16-bit definition in ISO/IEC 23090-31 is provided.

1.2.2.2.3. Resulting Inconsistency

Aspect ISO/IEC 23090-31 [1] ISO/IEC 23090-32 [2] Channel identifier size 16 bits 8 bits Maximum channels 65536 256 Scope Coding (MIHS) Carriage (ISOBMFF)

This creates a capability mismatch where coding features cannot always be transported.

1.2.2.3. Proposed Change
1.2.2.3.1. Alignment of Channel Identifier

It is proposed to align the channel identifier used in ISO/IEC 23090-32 [2] with the definition in ISO/IEC 23090-31 [1].

1.2.2.3.2. Normative Change

All occurrences of channel_id in ISO/IEC 23090-32 [2] shall be updated as follows:

unsigned int(16) channel_id;

In addition, a normative reference shall be introduced in the sub-clause 5.2 MIHS streams and tracks ISO/IEC 23090-32 [2]

The channel_id used for carriage of haptics data shall use the same bit-width and semantics as defined for the haptic channel identifier in ISO/IEC 23090-31. [1]

1.2.2.3.3. Affected Structures

The following structures shall be updated accordingly: • HapticChannelDescriptionHeaderBox • HapticBandConfigurationBox • MIHSBandGroupBox (and any other occurrence of channel_id in ISO/IEC 23090-32) [2]

1.2.2.3.4. Impact
  • Ensures full consistency between coding and carriage specifications

  • Removes artificial limitations on channel scalability

  • Enables support for advanced haptic systems with high channel counts

  • Improves interoperability across implementations

1.2.2.3.5. Conclusion

Aligning the channel identifier bit-width between ISO/IEC 23090-31 [1] and ISO/IEC 23090-32 [2] resolves a normative inconsistency and ensures that all conformant haptics bitstreams can be transported without loss or ambiguity.

This change improves interoperability and future-proofs the specification for scalable haptic systems.

1.2.3. Clarification of Metadata Dependency between MIHS Track and Referenced MIHS Band Tracks ISO/IEC 23090-32 [2]

1.2.3.1. Introduction

ISO/IEC 23090-32 [2] specifies the carriage of this haptics data in the ISO Base Media File Format (ISOBMFF), including both single-track and multi-track encapsulation modes. In the multi-track mode, a MIHS track may reference one or more MIHS band tracks that carry the haptic data samples associated with the experience.

1.2.3.2. Problem Statement

Clause 5.2 of ISO/IEC 23090-32 [2] currently specifies the following requirements for referenced MIHS band tracks:

The sample entries of each referenced MIHS band track shall satisfy the following conditions: a) It shall contain all the necessary metadata in its configuration box needed for decoding the samples of this band track without relying on the MIHS track. b) Its configuration box and haptic experience boxes shall not contradict the information in the same boxes of the MIHS track that is referencing this MIHS band track. c) Its configuration box and haptic experience boxes shall not contain any information about the samples in other referenced MIHS band tracks […​] However, these requirements introduce ambiguity and potential inconsistency with the overall architecture defined in the specification.

In particular: • The specification defines that, in multi-track mode, the MIHS track may reference MIHS band tracks that carry the samples of the experience, while the MIHS track provides global configuration and metadata. • The MIHSConfigurationBox and associated description boxes in the MIHS track reflect initialization units and provide decoder configuration for the haptic experience.

In this context, requirement (a) implies that each MIHS band track shall be independently decodable without relying on the MIHS track. This contradicts the intended separation of responsibilities between: the MIHS track, which provides global experience-level metadata, and the MIHS band tracks, which carry band-specific data and associated metadata.

As a result: • Requirement (a) may incorrectly suggest full independence of MIHS band tracks • Requirements (b) and (c) do not clearly define the expected scope of metadata in band tracks versus the MIHS track • The current wording may lead to inconsistent implementations regarding metadata duplication and dependency handling

1.2.3.3. Technical Analysis

The specification ISO/IEC 23090-32 [2] defines that: • A MIHS track may either contain all samples (single-track mode) or reference MIHS band tracks that contain the samples (multi-track mode) • Metadata describing the haptic experience, perceptions, channels, and bands originates from the MIHS stream and is reflected in configuration and description boxes

In multi-track mode: • The MIHS track acts as the entry point and global description of the experience • MIHS band tracks provide band-level data and associated metadata • Track referencing and grouping mechanisms are used to associate band tracks with channels and perceptions

Therefore, requiring that each MIHS band track be decodable “without relying on the MIHS track” is not aligned with: • the referencing model • the distribution of metadata across tracks • the intended decoding workflow combining MIHS track and band tracks

1.2.3.4. Proposed Change

It is proposed to revise the requirements on referenced MIHS band tracks to clarify the dependency model and avoid ambiguity.The sub-clause for which the changes are proposed is 5.2 MIHS streams and tracks ISO/IEC 23090-32 [2]

1.2.3.4.1. Replacement of Requirement (a)

Replace: It shall contain all the necessary metadata […​] without relying on the MIHS track. with: It shall contain all band-specific metadata in its configuration box necessary for decoding the samples of this MIHS band track, while remaining consistent with the information provided in the MIHS track.

1.2.3.4.2. Clarification of Requirement (b)

Keep the intent but clarify wording: Its configuration box and haptic experience boxes shall be consistent with the corresponding information in the MIHS track that references this MIHS band track.

1.2.3.4.3. Clarification of Requirement (c)

Refine scope of metadata isolation: Its configuration box and haptic experience boxes shall only describe the samples carried in this MIHS band track and shall not include information describing samples in other MIHS band tracks.

1.2.3.5. Impact

The following conditions apply to ensure consistency between the MIHS track and the referenced MIHS band tracks.

  • Clarifies the dependency between MIHS track and MIHS band tracks

  • Aligns the specification with the intended multi-track architecture

  • Avoids misinterpretation regarding independent decoding of band tracks

  • Improves interoperability and consistency across implementations

1.2.3.6. Conclusion

The current wording of the requirements for referenced MIHS band tracks introduces ambiguity regarding metadata ownership and decoding dependencies. The proposed changes clarify that MIHS band tracks contain band-specific metadata while relying on the MIHS track for global information, ensuring consistency with the overall design of ISO/IEC 23090-32

1.2.4. References

[1] WG07N00832, “Text of ISO/IEC FDIS 23090-31 MPEG 3D Graphics and Haptics Coding Carriage of Haptics Data”, MPEG#145, OnLine, January 2024. [2] WG03N01412, “Text of ISO/IEC FDIS 23090-32 Carriage of Haptics Data”, MPEG#148, Kemer, Türkiye, November 2024.

2. Text-based Haptics Carriage in ISOBMFF

2.1. Progress status

MPEG 155: The haptics experts support adding ISOBMFF support for HJIF for creative workflows, enabling more complete use of haptic content. The specific ISOBMFF implementation will be determined by the file format experts, based on contributions m77774 (InterDigital) and m77654 (Sony) for HJIF carriage in 23090-32 TuC. Some of the key topics to address are; Generic descriptive sample entry, Sample entry for HJIF carriage, Effect-object ID signalling within samples, Sample duration format, Empty sample format, etc.

2.2. m76726 [System][Haptics] Encapsulation of Text-based haptics in ISOBMFF

2.2.1. Abstract

This contribution proposes to investigate encapsulating text-based haptics in the ISO Base Media File Format (ISOBMFF).

This version removed references to Apple Haptics and Audio Pattern.

Note from the meeting: Alignment with WG7 is required. Consideration on potential market fragmentation and bitrate efficiency.

2.2.2. Introduction

2.2.2.1. Overview

Haptics as a media type is an emerging modality that enhances the realism of the overall user experience. It can play a subtle but important role in shaping the user’s experience. It acts as a third sensory channel alongside sight and sound. Haptics introduces tactile signals making the entire user experience engaging and immersive. A haptic movie trailer [1] was released on Apple TV app on iPhone that played synchronized vibrations that matched the scene in the movie trailer.

Another key role is in accessibility. For users with visual or auditory impairments, haptic media data can act as primary signals guiding navigation, confirming actions, or alerting users to changes. For such users, haptic media becomes an alternative way of experiencing the content.

The key to achieving a rich experience with haptic media along with audio-visual is the synchronization with audio-visual media. With improper synchronization, the experience can feel poor and uncomfortable to enjoy the content as it is with audio-visual synchronization.

One common way Haptic format is described is using human-readable textual form. In MPEG, HJIF format [2] has been described which is developing using JSON providing haptic information. HJIF describes properties which when provided to a HJIF decoder synthesizes a haptic signal accordingly.

Currently, ISO/IEC 23090-32 [4] defines the encapsulation of binary MIHS unit data in ISOBMFF. There is a gap in the specification on how haptic content described in textual format can be encapsulation in ISOBMFF container.

2.2.2.2. Haptics JSON Interchange Format

The Haptics JSON Interchange Format (HJIF), defined in ISO/IEC 23090-31 [2], provides a structured and human-readable way to represent haptic media. It organizes haptic content using a hierarchical model. At the top level, an HJIF document defines an experience, which represents a complete haptic scene and captures the overall structure of the content. Within an experience, haptic data is grouped into one or more perceptions, each corresponding to a distinct type or modality of haptic sensation.

Each perception is further divided into channels, which represent logical streams of haptic information. A channel may map to a specific target, such as a particular body location or a group of actuators. Channels are then subdivided into bands, which capture different perceptual components of the haptic signal.

Within each band, the content is described using effects, which are the fundamental time-based units of haptic media. Effects are defined by temporal properties such as start time and duration, along with perceptual parameters like intensity, frequency, magnitude, or other modality-specific attributes. They may also include parametric descriptions, such as envelopes or modulation curves, enabling the haptic signal to evolve dynamically over time.

The timing information for a haptic signal is described with band and effects in HJIF. The ‘position’ property indicates the time offset of the effect in a band. Within each effect, keyframes are included. A keyframe has a property ‘relative_position’ which indicates the relative time of the keyframe with respect to the parent effect.

{
"version": "2025",
"profile": "Main",
"level": 1,
"date": "2026-04-01",
"description": "",
"timescale": 1000,
"perceptions": [
  {
    "id": 0,
    "channels": [
      {
        "id": 0,
        "body_part_mask": 0,
        "bands": [
          {
            "band_type": "VectorialWave",
            "lower_frequency_limit": 65,
            "upper_frequency_limit": 300,
            "effects": [
              {
                "effect_type": "Basis",
                "position": 200,
                "phase": 0.0,
                "base_signal": "Sine",
                "keyframes": [
                  {
                    "relative_position": 0,
                    "amplitude_modulation": 0.3068999946117401,
                    "frequency_modulation": 90
                  },
                  {
                    "relative_position": 1000,
                    "amplitude_modulation": 0.3068999946117401,
                    "frequency_modulation": 90
                  }
                ]
              }
            ]
          }
        ]
      }
    ]
  }

2.2.3. Proposal

2.2.3.1. HJIF haptic sample entry
2.2.3.1.1. Description

A haptic track carrying HJIF samples is a HJIF haptic track. A HJIF haptic track contains a HJIFSampleEntry which extends HapticsSampleEntry.

The definition of a HJIFSampleEntry for type ‘hjif’ is as follows.

Sample Entry Types:

'hjif'

Container:

Sample Description Box ('stsd')

Mandatory:

Yes

Quantity:

One

aligned(8) class HJIFSampleEntry('hjif') extends HapticsSampleEntry {
	HJIFConfigurationBox config;
}

A HJIFConfigurationBox contains additional boxes HapticsPerceptionDescriptionBox and HJIFHapticsAvatarDescriptionBox as defined in ISO/IEC 23090-32. The information carried in HJIFConfigurationBox is used to configure the HJIF decoder to decode the HJIF track sample. The HJIFSampleEntry carries HapticsBandDescriptionBox which describes the band information carried in the HJIF track.

The definition of HJIFConfigurationBox is as follows.

Box Type:

'hjcf'

Container:

HJIF sample entry ('hjif')

Mandatory:

Yes

Quantity:

One

aligned(8) class HJIFConfigurationBox () extends FullBox ('hjcf',version = 0, flags = 0){
	unsigned int(8) 	version;
    	unsigned int(8) date;
    	utf8string description;
	HapticsPerceptionDescriptionBox perception;
	HapticsAvatarDescriptionBox avatar[];
	HapticsBandDescriptionBox band[];
}

version specifies the specification version in which the haptics samples are coded. date specifies the creation date of the asset description contains a brief description of the haptic experience.

2.2.3.1.2. HJIF sample format

An HJIF sample consists of a JSON document. The JSON document contains haptic effects as per the HJIF specification. For example, a HJIF track carrying VectorialWave band type data carries HJIF track sample which contains haptic effects as shown in the example below.

{
  "effect_type": "Basis",
  "position": 200,
  "phase": 0.0,
  "base_signal": "Sine",
  "keyframes": [
    {
      "relative_position": 0,
      "amplitude_modulation": 0.3068999946117401,
      "frequency_modulation": 90
    },
    {
      "relative_position": 1000,
      "amplitude_modulation": 0.3068999946117401,
      "frequency_modulation": 90
     }]
  }

The HJIF track sample has a time offset of 200 ms and should start playing at 200ms as the position field is set to 0. The duration of the HJIF track sample is based on the relative position of the keyframe at keyframes[0] and relative position of the keyframe at keyframes [1] is 1000ms. The HJIF sample duration is 1000 ms.

2.2.4. Recommendation

It is recommended to start a study on carriage of text-based haptics. It is recommended to use the proposed scheme in Section 3 as a starting point for defining the encapsulation of text-based haptics in ISOBMFF.  

2.2.5. References

[1] F1 haptic trailer, Online, https://tv.apple.com/us/clip/haptic-trailer/umc.cmc.5834l80x7lpxvb1wqiz7uvgj7?targetId=umc.cmc.3t6dvnnr87zwd4wmvpdx5came&targetType=Movie [2] ISO/IEC 23090-31:2025 Information technology — Coded representation of immersive media Part 31: Haptics coding, Online, https://www.iso.org/standard/86122.html [3] ISO/IEC 23090-32:2025 Information technology — Coded representation of immersive media Part 32: Carriage of haptics data, Online, https://www.iso.org/standard/86443.html [4] ISO/IEC 14496-30 Information technology — Coding of audio-visual objects Part 30: Timed text and other visual overlays in ISO base media file format, Online, https://www.iso.org/standard/75394.html

2.3. m77654 [Haptics] [ISOBMFF] Consideration of Text-based HJIF format encapsulation in ISOBMFF

Title: [Haptics] [ISOBMFF] Consideration of Text-based HJIF format encapsulation in ISOBMFF Author: Mitsuhiro Hirabayashi, Seitaro Kaneko, Akihiro Nomoto, Kazunobu Ohkuri (Sony Corporation)

2.3.1. Introduction

Encapsulation of Text-based haptics in ISOBMFF[3]was proposed and Technology under Consideration on ISO/IEC 23090-32[4] was planned to issue at MPEG#154 meeting.

This contribution provides the considerations on Text-based haptics HJIF format encapsulation in ISOBMFF.

2.3.2. Consideration

2.3.2.1. Use case and the requirement

HJIF format is defined as interchange file format and MIHS format is defined as transport format in ISO/IEC 23090-31[1]. MIHS carriage format in ISOBMFF is defined in ISO/IEC 23090-32[2].

We still have concerns about the potential market fragmentation and bitrate efficiency by specifying new text-based haptics carriage format in ISOBMFF, which was described in File Format BoG minutes at MPEG#154 meeting. We think the use cases and the requirements should be clarified for the standardization of Text-based haptics HJIF format encapsulation in ISOBMFF in WG3 and WG7.

2.3.2.2. Feasibility of text-based haptics HJIF format encapsulation

However, even if the use cases and the requirements for Text-based haptics HJIF format encapsulation in ISOBMF are not clear, we would investigate the feasibility of text-based haptics HJIF format encapsulation in ISOBMFF to have efficient discussion on these topics.

2.3.2.2.1. Haptic media overview

ISO/IEC 23090-31 describes haptic experiences composed of perceptions containing channels, which in turn contain bands.

Structure of haptic media
Figure 1. Figure 1 – Structure of haptic media.

Experiences, perceptions, channels, and bands also contain metadata, which does not depend on time. Bands additionally contain haptic effect definitions or references to effects in the containing perception’s effect library to be presented at specific times.

2.3.2.2.2. Haptic JSON Interchange Format HJIF overview

The Haptics JSON Interchange Format (HJIF), defined in ISO/IEC 23090-31 [2], provides a structured and human-readable way to represent haptic media. It consists of static metadata object and timed effect object in band. Static metadata objects are such as experiences, perceptions, channels, and bands metadata.

2.3.2.2.3. High level design for text-based HJIF format encapsulation in ISOBMFF
  • Static metadata objects such as experiences, perceptions, channels, and bands could be delivered in sample entry in ISOBMFF.

  • One or more timed effect objects extracted from HJIF data, which have same timing could be delivered in sample format in ISOBMFF.

  • Sample entry and sample format might conform to the HJIF format of MPEG_haptics object as defined in ISO/IEC 23090-31 to avoid any modification of sample entry and sample format for decoding and rendering process and HJIF input.  Sample format of extracted MPEG_haptics.effect object requires the MPEG_haptics.perception id, MPEG_haptics.channel id, MPEG_haptics.band object id to identify MPEG_haptics.effect object and to conform to the HJIF format.

  • The duration of sample format could be the same as the duration of MPEG_haptics.effect object or longer than the duration of MPEG_haptics.effect object.

  • The empty sample format would be needed for streaming when the duration of no MPEG_haptics.effect object is too long.

2.3.2.2.4. Syntax and semantics of sample entry and sample format
Sample entry
Class HapticsHJIFSampleEntry extends MPEGHapticSampleEntry (‘hji1’) {
    HapticHJIFConfigurationBox()
}
HapticHJIFConfigurationBox
Class HapticHJIFConfigurationBox (‘hjiC’){
    String MPEG_hapitcs configuration object ;
}
  • MPEG_haptics configuration object is a subset of MPEG_haptics object, which contains MPEG_haptics object elements as defined in ISO/IEC 23090-31, except for MPEG_haptics.effect object which contains timed object.

Effect Object Sample format
aligned (8) class HJIFSample {
    String MPEG_hapitcs sample object ;
}
  • MPEG_haptics sample object is a subset of MPEG_haptics object, which contains one or more timed MPEG_haptics.effect object. One MPEG_haptics.effect object is contiguous signal data which starts from position element.

  • MPEG_haptics.perception id, MPEG_haptics.channel id, MPEG_haptics.band object id or index information shall be contained in MPEG_hapitcs sample object to identify MPEG_haptics.effect object.

  • Sample duration of HJIF sample be could be longer than the duration of MPEG_haptics.effect object to signal the duration which has no MPEG_haptics.effect object.

  • Otherwise, Sample duration of HJIF sample may be the same duration of MPEG_haptics.effect object.

Empty Sample format
aligned (8) class HJIFEmptySample {
    String MPEG_hapitcs empy_sample object ;
}
  • MPEG_haptics empty_sample object is a subset of MPEG_haptics object, which do not contain timed MPEG_haptics.effect object.

  • MPEG_haptics.perception id, MPEG_haptics.channel id, MPEG_haptics.band object id or index information should be contained in MPEG_hapitcs empty_sample object to identify MPEG_haptics.effect object.

2.3.2.2.5. Example of sample entry and sample in ISOBMFF extracted from HJIF data
HJIF data and MPEG_haptics configuration
Figure 2. Figure 2 HJIF data and MPEG_haptics configuration
MPEG_haptics sample and empty_sample
Figure 3. Figure 3 MPEG_haptics sample and MPEG_haptics empty_sample

2.3.3. Conclusion

This contribution requires clarification of the use cases and the requirements for the standardization of Text-based HJIF format encapsulation in ISOBMFF in WG3 and WG7. However, this contribution also provides the feasibility study of Text-based haptics HJIF format encapsulation in ISOBMFF. It is proposed to include this investigation as one of the solutions in TuC for further study.

2.3.4. Reference

[1] “Text of ISO/IEC FDIS 23090-31 Haptics coding”, WG7_N00832, MPEG#145, January 2024 [2] “Text of ISO/IEC FDIS 23090-32 Carriage of haptics”, WG3_N01412, MPEG#148, November 2024 [3] “[Systems][Haptics] Encapsulation of Text-based haptics in ISOBMFF”, m76726, MPEG#154, April 2026 [4] “Technologies under consideration on carriage of haptics data”, WG3_N01823, MPEG#154, April 2026

2.4. m77774 [FF][Haptics] Text-based haptics carried in ISOBMFFF

2.4.1. Abstract

At MPEG 154 meeting, m76726 was presented and it was included in the TuC for future amendment of ISO/IEC 23090-32[1]. Some concerns were discussed during the meeting. This contribution addresses some of the questions raised for contribution m76726 [2].

2.4.2. Clarification

The group had two main concerns regarding contribution m76726 [2].

2.4.2.1. Clarification point 1: lacking sufficient common semantics across the referenced formats to justify a generic layer

Response: A class of haptic content is expressed in textual, structured form. Rather than carrying binary-encoded actuator signals, these formats use human-readable data models primarily JSON to describe time-sequenced haptic events, parametric properties, and modulation curves. Prominent examples include:

  • Haptics JSON Interchange Format (HJIF), standardized in ISO/IEC 23090-31 [1], which represents haptic experiences as a hierarchy of perceptions, channels, bands, and effects, all anchored to a common temporal reference. HJIF is the primary interchange format within the MPEG-I haptics framework.

  • Apple Haptic and Audio Pattern (AHAP) format [3], which encodes haptic content as a sequence of time-aligned events and parameter curves, also expressed in JSON. AHAP is widely deployed on Apple platforms.

  • Meta .haptic format [4], a device-agnostic JSON-based standard for representing vibrotactile haptic effects, designed to facilitate interchange between authoring tools, SDKs, and runtime engines.

Some properties such as content encoding, content format, and timescale are fundamental properties that are common across haptic data formats because they provide the essential foundation for representing, exchanging, and interpreting haptic content. Content encoding specifies how the file is represented as a sequence of bytes (e.g., UTF-8), ensuring that the content can be reliably stored, transmitted, and parsed across different platforms and software implementations. Content format, such as JSON, defines the structural organization of the data, enabling tools and playback engines to consistently interpret metadata, timing information, and haptic primitives regardless of the underlying haptic specification. Timescale establishes the temporal reference for all haptic events, allowing playback systems to reproduce effects with accurate timing and synchronization. These properties are independent of any particular haptic codec or effect model and constitute the core infrastructure required by any haptic interchange format, making them natural candidates for standardization across diverse haptic ecosystems.

A generic text-based haptic sample entry will factorize common aspects (text encoding, content format) while leaving interpretation to the identified payload format. This approach improves extensibility and allows future text-based haptic formats to be supported without introducing new ISOBMFF sample entry definitions. Therefore, we believe it is limiting to only describe the carriage of only one of the formats in ISOBMFF

This contribution proposes a generic ISOBMFF carriage layer for descriptive text-based haptics with common properties. The proposed layer defines how text-based haptic documents are transported and how the decoder identifies the corresponding document format. The interpretation of the document remains entirely format-specific. Each descriptive haptics format remains independently specified and preserves its own syntax and semantics.

2.4.2.2. Point 2: Concern regarding reduced interoperability and complexity to define carriage format for HJIF

Response: The ISO Base Media File Format (ISOBMFF) [6] is not limited to serving as a distribution format for delivering finalized media content to end users. It also provides a flexible foundation for production and authoring workflows. ISO/IEC 23090-31[1] defines two formats to describe haptics data MIHS and HJIF. ISOBMFF binding for MIHS is already described in ISO/IEC 23090-32[5]. Thus, defining ISOBMFF binding for HJIF either for production workflow or even distribution is within the working principle of ISOBMFF.

2.4.3. Proposal

2.4.3.1. Generic descriptive haptics sample entry
2.4.3.1.1. Description

Figure below illustrates the proposed architecture. A generic descriptive haptics sample entry provides the common ISOBMFF signalling required to transport text-based haptic documents. Individual descriptive formats such as HJIF, Meta .haptics, AHAP or future formats remain responsible for defining their own document syntax and semantics.

An example of using descriptive haptics sample entry for different haptic formats
DescriptiveHapticsSampleEntry
             |
    +--------+--------+
    |        |        |
   HJIF     AHAP     Meta
    |        |        |
   JSON     JSON   JSON/XML
2.4.3.1.2. Syntax
aligned(8) DescriptiveHapticsSampleEntry(codingName) extends HapticsSampleEntry (`hdes`) {  

    DescriptiveHapticsContentInfoBox content_info; 

} 
aligned(8) class DescriptiveHapticsContentInfoBox extends FullBox (‘dhci’, version =0, flags=0) {

    utf8string description;
    utf8string content_encoding;
    utf8string content_format;
    unsigned int(8) timescale;
}
2.4.3.1.3. Semantics

description contains a brief description of the haptic experience.

content_encoding in the sample entry may indicate the character encoding used for haptics-text payload such as UTF-8 and UTF-16.   

content_format in the sample entry may indicate the serialization format for the structured haptics document. In some versions of the specification, content formats such as JSON and XML may be supported. 

timescale is an integer that specifies the time-scale for the entire presentation.

2.4.3.2. HJIF Haptic

Section HJIF haptic sample entry describes the sample entry of an HJIF haptic track. Section HJIF sample format describes the sample format for the HJIF haptic track.

2.4.3.2.1. HJIF haptic sample entry

A haptic track carrying HJIF samples is a HJIF haptic track. A HJIF haptic track contains a HJIFSampleEntry which extends HapticsSampleEntry.

The definition of a HJIFSampleEntry for type ‘hjif’ is as follows.

Sample Entry Types:

'hjif'

Container:

Sample Description Box ('stsd')

Mandatory:

Yes

Quantity:

One

aligned(8) class HJIFSampleEntry('hjif') extends DescriptiveHapticsSampleEntry {

HJIFConfigurationBox config;

}
2.4.3.2.2. HJIFConfigurationBox

The HJIFConfigurationBox contains the information required to configure the decoder for interpreting HJIF samples. It includes one HapticsPerceptionDescriptionBox, zero or more HapticsAvatarDescriptionBox instances, and one or more HapticsBandDescriptionBox instances, as defined in ISO/IEC 23090-32.

The perception and avatar description boxes provide metadata describing the haptic perception and associated avatars, while the band description boxes specify the characteristics of the haptic bands carried by the HJIF track.

The HJIFConfigurationBox is mandatory and shall be present exactly once in each HJIF sample entry. It is is used by a decoder to configure the interpretation of the HJIF samples carried in the associated track.

The definition of HJIFConfigurationBox is as follows.

Box Type:

'hjcf'

Container:

HJIF sample entry ('hjif')

Mandatory:

Yes

Quantity:

One

aligned(8) class HJIFConfigurationBox () extends FullBox ('hjcf',version = 0, flags = 0){
    HapticsPerceptionDescriptionBox perception;
	HapticsAvatarDescriptionBox avatar[];
	HapticsBandDescriptionBox band[];

}
2.4.3.2.3. HJIF sample format

An HJIF sample consists of a JSON document. The JSON document contains haptic effects as per the HJIF specification. For example, a HJIF track carrying VectorialWave band type data carries HJIF track sample which contains haptic effects as shown in the example below.

{
  "effect_type": "Basis",
  "position": 200,
  "phase": 0.0,
  "base_signal": "Sine",
  "keyframes": [
    {
      "relative_position": 0,
      "amplitude_modulation": 0.3068999946117401,
      "frequency_modulation": 90
    },
    {
      "relative_position": 1000,
      "amplitude_modulation": 0.3068999946117401,
      "frequency_modulation": 90
     }]
  }

The HJIF track sample has a time offset of 200 ms and should start playing at 200ms as the position field is set to 0. The duration of the HJIF track sample is based on the relative position of the keyframe at keyframes[0] and relative position of the keyframe at keyframes [1] is 1000ms. The HJIF sample duration is 1000 ms.

2.4.4. Recommendation

This contribution recommends initiating a new amendment for ISO/IEC 23090-32 [5] and adopting proposed text in Section Proposal to define carriage of text-based haptics and HJIF format.

2.4.5. References

[1] ISO/IEC 23090-31:2025 Information technology — Coded representation of immersive media Part 31: Haptics coding, Online, https://www.iso.org/standard/86122.html

[2] m76726, [System][Haptics] Encapsulation of Text-based haptics in ISOBMFF, MPEG#154, SantaEularia, April 2026

[5] ISO/IEC 23090-32:2025 Information technology — Coded representation of immersive media Part 32: Carriage of haptics data, Online, https://www.iso.org/standard/86443.html

[6] ISO/IEC 14496-30 Information technology — Coding of audio-visual objects Part 30: Timed text and other visual overlays in ISO base media file format, Online, https://www.iso.org/standard/75394.html

3. Spatial Haptics

3.1. Progress status

MPEG 155: The group agrees that the concepts of items and entity grouping are the correct ones to link track with static information. The group welcomes concrete text with for example item_type value and definition.

3.2. m77773 [FF][Haptics] Carriage of MPEG-I Haptics Spatial Units using ISOBMFF Items

3.2.1. Introduction

ISO/IEC 23090-32 specifies the carriage of MPEG-I Haptics data in the ISO Base Media File Format (ISOBMFF). The current specification transports MPEG-I Haptics data using timed MIHS samples. Both Temporal Units and Spatial Units are currently carried using this mechanism, although they represent different types of information. Temporal Units contain timed haptic data intended for presentation during playback, whereas Spatial Units describe spatial configuration information not associated with any presentation timeline.

This contribution proposes separating the carriage of these two types of information by transporting Temporal Units in timed MIHS samples, as specified today, while transporting Spatial Units as standalone ISOBMFF Items.

This approach preserves the existing MIHS carriage model for timed data while relying on existing ISOBMFF mechanisms for non-timed resources. Decoder initialization is also simplified since Spatial Units can be identified and parsed before the first Temporal Unit is decoded.

Since Spatial Units are no longer embedded in MIHS samples, a signalling is required to associate them with the corresponding MIHS tracks.

This contribution discusses a possible signalling mechanism based on EntityToGroup box.

3.2.2. Proposed ISOBMFF Carriage

3.2.2.1. Spatial Units as ISOBMFF Items

The proposed carriage model stores each Spatial Unit as an individual ISOBMFF Item. The payload of each Item contains one complete Spatial Unit as defined by ISO/IEC 23090-32, while Temporal Units continue to be transported unchanged in timed MIHS samples.

This approach clearly separates timed media from non-timed spatial configuration information. Spatial Units become standalone ISOBMFF Items that are resolved during decoder initialization before the beginning of Temporal Unit.

The Figure 1 illustrates this carriage architecture.

          +-----------------------------------------+
          |                  MovieBox               |
          +-----------------------------------------+
                 |                           |
           +-----+-----+               +-----+------+
           |   MetaBox |               | MIHS Track |
           +-----------+               +------------+
                 |                           |
    +------------+--------+                  |
    |                     |                  |
Spatial Item 1       Spatial Item 2          |
    |                     |                  |
Spatial Unit         Spatial Unit            |
                                             |
                                     Timed MIHS Samples
                                             |
                                      Temporal Units

Figure 1: haptic carriage architecture

3.2.2.2. EntityToGroup Signalling

The ISOBMFF entity grouping mechanism provides the way to associate multiple entities (tracks and/or items) with the same haptic experience.

A new grouping_type ‘hspt’ identifies a group composed of one or more MIHS tracks and one or more Spatial Items.

3.2.2.3. Processing model

During file initialization, the decoder identifies the EntityToGroupBox entries with the grouping type ‘hspt’. For each ‘hspt’ group, the decoder determines the associated MIHS track(s) and the referenced Spatial Item(s). Each Spatial Item is then retrieved, parsed, and stored in a local Spatial Unit table indexed by its Item identifier and associated with the corresponding MIHS track(s).

During playback, the decoder resolves these identifiers using the Spatial Unit table constructed during initialization before rendering the corresponding haptic content.

3.2.2.4. Recommendations

It is proposed to agree on the carriage mechanism presented in clause 2 for an amendment of the ISO/IEC 23090-32 specifications.

3.2.2.5. References

[1] WG03N01412, “Text of ISO/IEC FDIS 23090-32 Carriage of Haptics Data”, MPEG#148, Kemer, Türkiye, November 2024.